﻿''' <summary>
''' Fichero que contiene la clase Rol
''' </summary>
''' <author>Juan David Cabezuelo, Arturo Sirvent, Fermín Martínez, Eugenio Cañete y Pablo Vicedo</author>
Public Class Rol
    Private _Id As Integer
    Private _Nombre As String
    Private _MenuArchivo As Boolean
    Private _MenuCampeonato As Boolean
    Private _MenuGestion As Boolean
    Private _MenuConfiguracion As Boolean
    Private _MenuAyuda As Boolean

    ''' <summary>
    ''' Constructor vacío.
    ''' </summary>
    ''' <remarks></remarks>
    Public Sub New()
        Me._Id = 0
        Me._Nombre = ""
    End Sub

    ''' <summary>
    ''' Constructor con parámetros que inserta el objeto automaticamente en la bd.
    ''' </summary>
    ''' <param name="nombre"></param>
    ''' <param name="menuArchivo"></param>
    ''' <param name="menuCampeonato"></param>
    ''' <param name="menuGestion"></param>
    ''' <param name="menuConfiguracion"></param>
    ''' <param name="menuAyuda"></param>
    ''' <remarks></remarks>
    Public Sub New(ByVal nombre As String, ByVal menuArchivo As Boolean, ByVal menuCampeonato As Boolean, _
                   ByVal menuGestion As Boolean, ByVal menuConfiguracion As Boolean, ByVal menuAyuda As Boolean)
        If ValidarCadena(nombre, 50, True) Then
            Me._Nombre = nombre
        Else
            Throw New ArgumentException("Error el nombre no puede excedor de los 50 caracteres ni estar vacio")
        End If
        Me._MenuArchivo = menuArchivo
        Me._MenuCampeonato = menuCampeonato
        Me._MenuGestion = menuGestion
        Me._MenuConfiguracion = menuConfiguracion
        Me._MenuAyuda = menuAyuda

        Dim miBD = New BaseDatos
        miBD.InsertarModificarBorrar("Insert into Roles(Nombre) values('" & Me._Nombre & "')")

        miBD.InsertarModificarBorrar("Insert into Tener(IdRol, IdPermiso, Accesible) values(" & Me._Id & "," & 1 & ",'" & Me._MenuArchivo & "')")
        miBD.InsertarModificarBorrar("Insert into Tener(IdRol, IdPermiso, Accesible) values(" & Me._Id & "," & 2 & ",'" & Me._MenuCampeonato & "')")
        miBD.InsertarModificarBorrar("Insert into Tener(IdRol, IdPermiso, Accesible) values(" & Me._Id & "," & 3 & ",'" & Me._MenuGestion & "')")
        miBD.InsertarModificarBorrar("Insert into Tener(IdRol, IdPermiso, Accesible) values(" & Me._Id & "," & 4 & ",'" & Me._MenuConfiguracion & "')")
        miBD.InsertarModificarBorrar("Insert into Tener(IdRol, IdPermiso, Accesible) values(" & Me._Id & "," & 5 & ",'" & Me._MenuAyuda & "')")
    End Sub
End Class
